package com.ruoyi.mes.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.poi.hpsf.Decimal;

import java.math.BigDecimal;

/**
 * 产品信息对象 pro_bom_tec
 *
 * @author LongAndHao
 * @date 2023-04-11
 */
public class ProInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 产品id */
    private Long id;

    /** 产品编码 */
    @Excel(name = "产品编码")
    private String proCode;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String proName;

    /** 产品类型 0 - 半成品 1 - 成品 */
    @Excel(name = "产品类型 0 - 半成品 1 - 成品")
    private Long proType;

    /** 工艺状态 */
    @Excel(name = "工艺状态")
    private Long tecStatus;

    /** BOM状态 */
    @Excel(name = "BOM状态")
    private Long bomStatus;

    /** 成本 */
    @Excel(name = "成本")
    private BigDecimal cost;

    /** 定价 */
    @Excel(name = "定价")
    private BigDecimal price;

    /** 删除标志（0代表存在 2代表删除） */
    @Excel(name = "删除标志（0代表存在 2代表删除）")
    private String DelFlag;

    /** 产品订单 需求数量 */
    @TableField(exist = false)
    private Long orderDemandNum;


    /** 订单状态 */
    @TableField(exist = false)
    @Excel(name = "订单状态")
    private Long orderStatus;

    public String getDelFlag() {
        return DelFlag;
    }

    public void setDelFlag(String delFlag) {
        DelFlag = delFlag;
    }

    public BigDecimal getCost() {
        return cost;
    }

    public void setCost(BigDecimal cost) {
        this.cost = cost;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public Long getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(Long orderStatus) {
        this.orderStatus = orderStatus;
    }

    public Long getOrderDemandNum() {
        return orderDemandNum;
    }

    public void setOrderDemandNum(Long orderDemandNum) {
        this.orderDemandNum = orderDemandNum;
    }

    public Long getTecStatus() {
        return tecStatus;
    }

    public void setTecStatus(Long tecStatus) {
        this.tecStatus = tecStatus;
    }

    public Long getBomStatus() {
        return bomStatus;
    }

    public void setBomStatus(Long bomStatus) {
        this.bomStatus = bomStatus;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setProCode(String proCode)
    {
        this.proCode = proCode;
    }

    public String getProCode()
    {
        return proCode;
    }
    public void setProName(String proName)
    {
        this.proName = proName;
    }

    public String getProName()
    {
        return proName;
    }
    public void setProType(Long proType)
    {
        this.proType = proType;
    }

    public Long getProType()
    {
        return proType;
    }


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("proCode", getProCode())
            .append("proName", getProName())
            .append("proType", getProType())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
